// @ts-ignore
// @ts-nocheck

const fs = require('fs')

// 读取JSON文件
function readJson(callback) {
  fs.readFile('questionList.json', 'utf8', (err, data) => {
    if (err) {
      console.error(err)
      return
    }
    const jsonData = JSON.parse(data)
    callback(jsonData)
  })
}

// 写入JSON文件
function writeJson(item, level) {
  // 把数据进行处理
  readJson((originData) => {
    const { length } = originData
    const value = []
    // 需要 item 分割之后，塞入 value，9 * 9的形式
    const splitItem = item.split('')
    for (let x = 1; x <= 9; x++) {
      const row = []
      for (let y = 1; y <= 9; y++) {
        const element = splitItem[x * 9 - 9 + y - 1]
        row.push({
          x,
          y,
          isOrigin: !!element,
          value: element ? +element : 0
        })
      }
      value.push(row)
    }
    const newData = {
      id: `question${length + 1}`,
      level,
      value
    }
    originData.push(newData)
    fs.writeFile(
      'questionList.json',
      JSON.stringify(originData),
      'utf8',
      (err) => {
        if (err) {
          console.error(err)
          return
        }
        console.log('JSON file has been saved.')
      }
    )
  })
}

writeJson(
  '528  3 1        9  6   7        58    31 89    74        3   4  8        9 8  253',
  5
)
